Computer control method, control program and computer

ABSTRACT

Provided is a method for controlling a computer, etc., which makes it possible to improve the usability of city building games. The computer is provided with a storage unit configured to store game contents arranged within a game space, positions of the game contents, and a template defining positions of one or more of game contents, and progresses a game by arranging the game contents within the game space based on a command by a player. The method includes when the template is applied to a predetermined area within the game space based on the command by the player, moving, by the computer, the game contents arranged within the game space to the positions of the game contents defined by the template.

CROSS REFERENCE TO RELATED APPLICATION

This application is a new U.S. patent application that claims the benefit of priority from JP 2013-202721, filed on Sep. 27, 2013, JP 2014-080554, filed on Apr. 9, 2014, and PCT International Application No. PCT/JP2014/075673, the entire content of which are incorporated herein by reference.

TECHNICAL FIELD

This invention relates to a method for controlling a computer, a recording medium and a computer.

BACKGROUND

In recent years, games which are played by installing a game program on a portable device from a server via a communication network have become common. Such games include games in which multiple players can participate (so-called “social games”). There are games wherein players can not only fight against or help each other, but are also enabled to communicate with each other.

Such known games include, for example, games (so-called “city building games”) wherein a player builds a city within a virtual space (hereinafter referred to as “game space”) provided in the game program. In city building games, players can build various facilities (such as houses, streets, ports, train stations, airports, castles, training facilities, etc.) on desired positions and create a city after their liking.

SUMMARY

In conventional city building games, it is the object of the game to build a desired city, and it is unnecessary to completely rebuild a city after it has been built once. On the other hand, in recent city building games, a city built by one player is attacked by a different player, and the city (arrangement of items such as protective walls, buildings that are subject to an attack, protecting soldiers, weapons, etc.) is one of factors for deciding the winning and losing, or superiority and inferiority. However, since the items (game contents) of a city of a player increase as the city develops, it is very complicated for a player to change positions, types, levels, etc., of individual items. Further, it is hard to understand what kind of effect changing a city would have against an attack from a different player. Therefore, many players have limited themselves to change only certain kinds of items, such as soldiers and weapons, for which changing positions, types, levels, etc., is easy. As a result, as the game progresses, it becomes monotonous, and players might become bored with it.

The present invention has been devised to address the above problem, and an object of the invention is to provide a method for controlling a computer, a recording medium and a computer that improve the usability of city building games and continuously attract players to the game.

Provided is a method for controlling a computer that is provided with a storage unit configured to store game contents arranged within a game space, positions of the game contents, and a template defining positions of one or more of game contents, and that progresses a game by arranging the game contents within the game space based on a command by a player. The method includes when the template is applied to a predetermined area within the game space based on the command by the player, moving, by the computer, the game contents arranged within the game space to the positions of the game contents defined by the template.

The computer may be, for example, a portable device, a desktop device, a server, etc., as long as it can execute the above procedure.

In one embodiment, in the above method, the storage unit further stores a template related to a different player, and when the template related to the different player is applied to a predetermined area within the game space based on the command by the player, the computer moves the game contents arranged within the game space to the positions of the game contents defined by the template related to the different player.

In another embodiment, in the above method, the storage unit further stores game contents which are arranged within the game space and are related to the different player, and positions of the game contents, and when the template related to the different player is applied to a predetermined area within the game space based on a command by the different player, the computer moves, out of the game contents arranged within the game space, game contents related to the different player to the positions of the game contents defined by the template related to the different player.

In another embodiment, in the above method, when a start of an event is reported by a different computer, the computer obtains a template for the event from the different computer and moves the game contents arranged within the game space to the positions of the game contents defined by the template obtained from the different computer.

Yet in another embodiment, in the above method, when the number of game contents arranged within the game space is smaller than the number of game contents for which positions are defined by the template, the computer moves the game contents arranged within the game space to the positions of the game contents defined by the template to which the moving distance is the smallest.

Still in another embodiment, in the above method, out of the positions of the game contents defined by the template, the computer displays positions on which no game contents are arranged and the game contents, in a discernible condition.

In another embodiment, in the above method, when the number of game contents arranged within the game space is larger than the number of game contents for which position are defined by the template, the computer moves the game contents arranged within the game space for which the moving distance to the positions of the game contents defined by the template is the smallest, to the positions.

In another embodiment, in the above method, when a template is created for a predetermined area within the game space based on a command from the player, the computer stores positions of game contents arranged within the predetermined area, as the template, in the storage unit.

Yet in another embodiment, in the above method, when a template is created by combining a plurality of templates based on a command from the player or a different player, or commands from the player and the different player, the computer stores the positions of the game contents defined by the plurality of templates, as the template, in the storage unit.

Provided is a non-transitory computer-readable recording medium having recorded thereon a program for a computer that is provided with a storage unit configured to store game contents arranged within a game space, positions of the game contents, and a template defining positions of one or more of game contents, and that progresses a game by arranging the game contents within the game space based on a command by a player. The program causes the computer to execute a process. The process includes when the template is applied to a predetermined area within the game space based on the command by the player, moving, by the computer, the game contents arranged within the game space to the positions of the game contents defined by the template.

Provided is a computer that progresses a game by arranging game contents within a game space based on a command by a player. The computer includes a storage unit configured to store game contents arranged within a game space, positions of the game contents, and a template defining positions of one or more of game contents, and a processing unit configured to apply the template to a predetermined area within the game space based on the command by the player. When the template is applied, the processing unit moves the game contents arranged within the game space to the positions of the game contents defined by the template.

The above method, recording medium and computer make it possible to improve the usability of city building games and continuously attract players to the game by making game contents and the arrangement of the game contents changeable by using templates.

BRIEF DESCRIPTION OF THE DRAWINGS

Other features and advantages of the present invention will be apparent from the ensuing description, taken in conjunction with the accompanying drawings, in which:

FIG. 1 illustrates an example of a schematic configuration of a game system;

FIG. 2A illustrates an example of a schematic configuration of the portable device;

FIGS. 2B to 2D illustrate examples of data structures of the various types of tables;

FIGS. 3A to 3E illustrate examples of a display screen of the portable device;

FIG. 4 illustrates a concept of creating and applying a template;

FIG. 5A illustrates one possible schematic configuration of the server;

FIGS. 5B and 5C illustrate examples of data structures of the various types of tables;

FIGS. 6A to 6C illustrate examples of the operational flow of the portable device;

FIGS. 7A to 7C illustrate examples of the operational flow of the server;

FIG. 8A illustrates an example of a schematic configuration of the portable device according to the second embodiment;

FIG. 8B illustrates an example of a data structure of the facility table;

FIG. 9 illustrates a concept of applying a template in a multi-player environment;

FIGS. 10A and 10B illustrate examples of the operational flow of the portable device;

FIG. 11 illustrates a concept of combining templates in a multi-player environment;

FIG. 12 illustrates an example of a schematic configuration of the portable device according to the third embodiment;

FIG. 13A illustrates one possible schematic configuration of the server;

FIG. 13B illustrates an example of a data structure of the event table;

FIGS. 14A and 14B illustrate examples of the operational flow of the portable device; and

FIGS. 15A to 15C illustrate examples of the operational flow of the server.

DESCRIPTION

Hereinafter, with reference to the drawings, a method for controlling a computer, a recording medium, and a computer will be described. It should be noted that the technical scope of the present invention is not limited to the described embodiments, but covers the invention described in the claims and its equivalent.

First Embodiment

In the present embodiment, a player builds a city within a game space. The player can arrange various facilities which are one example of game contents, within the game space. Further, for a predetermined area within the game space, the player can also create a template stipulating types and positions of facilities based on the types and positions of facilities arranged within the area. Moreover, the player can also apply the created template to a given area within the game space. When a template is applied, facilities arranged within the game space are automatically changed to the facilities defined in the template, and they are automatically moved to the defined positions.

Game contents refer to digital contents used in a game, and include, besides facilities, characters, soldiers, weapons, cards, figures, avatars, items, etc.

FIG. 1 illustrates an example of a schematic configuration of a game system 1.

The game system 1 includes at least one portable device 2 and a server 3. The portable device 2 and the server 3 are connected to each other via a communication network, and are connected to each other, for example, via a base station 4, a mobile communication network 5, a gateway 6, and the Internet 7. A program to be executed by the portable device 2 (e.g., a game program) and a program to be executed by the server 3 (e.g., a game control program) communicate with each other by using a communication protocol such as a Hypertext Transfer Protocol (HTTP).

FIG. 2A illustrates an example of a schematic configuration of the portable device 2.

The portable device 2 progresses the game in response to an operation of an operation unit 23 by a player. When necessary, the portable device 2 is connected to the server 3 via the base station 4, the mobile communication network 5, the gateway 6, and the Internet 7, to communicate with the server 3. In order to implement the foregoing functions, the portable device 2 includes a device communication unit 21, a device storage unit 22, the operation unit 23, a display unit 24, and a device processing unit 25.

While a multifunctional mobile phone (a so-called “smartphone”) may be assumed as the portable device 2, the present invention is not limited to this. The portable device 2 may be, for example, a mobile phone (a so-called “feature phone”), a personal digital assistant (PDA), a portable game machine, a portable music player, a tablet device, a tablet personal computer (PC), a notebook PC, etc., as long as the present invention is applicable thereto.

The device communication unit 21 includes a communication interface circuit including an antenna having a sensitivity band in a predetermined frequency band, and connects the portable device 2 to a wireless communication network. The device communication unit 21 establishes a wireless signal link with the base station 4 by a Code Division Multiple Access (CDMA) system or the like via a channel to be assigned by the base station 4, and communicates with the base station 4. The device communication unit 21 sends data supplied from the device processing unit 25 to the server 3 or the like. The device communication unit 21 supplies the data received from the server 3 or the like to the device processing unit 25.

The device storage unit 22 includes a semiconductor memory, for example. The device storage unit 22 stores an operating system program, a driver program, an application program, data, etc., used for processing in the device processing unit 25. For example, the device storage unit 22 stores an input device driver program for controlling the operation unit 23 and an output device driver program for controlling the display unit 24, as the driver program. The device storage unit 22 stores a game program, etc., for progressing the game and displaying the result thereof, as the application program. The device storage unit 22 stores identification numbers (IDs) of the players, a facility table (FIG. 2B) for managing facilities arranged within the game space, a facility-type table (FIG. 2C) for managing types of the facilities, a template table (FIG. 2D) for managing templates, and image data, video data, etc., relating to the facilities, templates, etc., as the data. Further, the device storage unit 22 may store temporary data relating to predetermined processing.

FIG. 2B depicts a facility table. In the facility table, a facility ID, a type ID, a position within the game space, etc., are recorded for each facility.

In the present embodiment, the game space is configured in grid form, wherein one facility is arranged on one grid, and the position of the facility is represented with the help of grid coordinates that have their origin in a predetermined grid (e.g., upper left of the game space). However, the present invention is not limited to this configuration. Any configuration of the game space, etc., is possible as long as the present invention can be applied to the configuration.

FIG. 2C depicts a facility-type table. In the facility-type table, a type ID, name, file name of image data, etc., are recorded for each type of facility.

FIG. 2D depicts a template table. In the template table, for each template, a template ID, a file name of thumbnail image data, a type ID and a position within the template of each facility, etc., are recorded.

Similarly to FIG. 2B, a position of a facility is represented with the help of the grid coordinates that have their origin in a predetermined grid (e.g., upper left of the template). However, the present invention is not limited to this configuration. Any representation of a position is possible as long as the present invention can be applied with the representation.

The operation unit 23 may be any device capable of operating the portable device 2, for example, a touch panel, a key button or the like. The player can input letters, numbers, symbols, etc., by using the operation unit 23. When operated by the player, the operation unit 23 generates a signal corresponding to the operation. The generated signal is supplied to the device processing unit 25 as a command from the player.

The display unit 24 may be any device capable of displaying a video, an image, etc., for example, a liquid crystal display, an organic electro-luminescence (EL) display, etc. The display unit 24 displays a video, an image, etc., corresponding to video data and image data supplied from the device processing unit 25.

The device processing unit 25 includes one or more processors and their peripheral circuits. The device processing unit 25 is, for example, a central processing unit (CPU), and integrally controls an overall operation of the portable device 2. The device processing unit 25 controls operations of the device communication unit 21, the display unit 24, etc., so that various types of processing of the portable device 2 are executed in an appropriate order in accordance with the programs stored in the device storage unit 22, the operation of the operation unit 23, etc. The device processing unit 25 executes processing based on the programs (the operating system program, the driver program, the application program, etc.) stored in the device storage unit 22. The device processing unit 25 can execute multiple programs (application programs, etc.) in parallel.

FIGS. 3A to 3E illustrate examples of a display screen of the portable device 2.

FIG. 3A depicts a game progression screen 300 that is displayed when a command has been given to start the game.

The game progression screen 300 displays a game space 301 and various facilities 302 to 306 arranged within the game space.

Further, multiple buttons are displayed in the lower portion of the game progression screen 300. By pushing buttons, commands are given: pushing a “Create” button 307 creates a template, pushing an “Apply” button 308 applies a template.

FIG. 3B depicts an area selection screen 310 that is displayed when a command to create a template has been given on the game progression screen 300 depicted in FIG. 3A.

The area selection screen 310 displays the game space 301, in which, for example, by tapping on two arbitrary points, an area 311 with the two points as opposite apexes is selected.

Further, a “Confirm” button 312 is displayed in the lower portion of the area selection screen 310, and by pushing this button, a command is given to create a template for the selected area 311.

FIG. 3C depicts a template selection screen 320 that is displayed when a command to apply a template has been given on the game progression screen 300 depicted in FIG. 3A.

On the template selection screen 320, a thumbnail image 321 and a “Select” button 322 are displayed for each template. By pushing the “Select” button 322, the corresponding template is selected.

FIG. 3D depicts a template display screen 330 that is displayed when a template has been selected on the template selection screen 320 depicted in FIG. 3C.

A preview image 3310 for when the template is applied to a predetermined area (e.g., around the center) within the game space is displayed in the left portion of the template display screen 330.

Further, names and quantities 3320 of facilities for which positions are defined by the template, are listed in the right portion of the template display screen 330.

Further, a “Confirm” button 333 is displayed in the lower portion of the template display screen 330, and by pushing this button, a template is confirmed.

FIG. 3E depicts an area selection screen 340 that is displayed when a template has been confirmed on the template display screen 330 depicted in FIG. 3D.

The area selection screen 340 displays the game space 301, in which, for example, by tapping on two arbitrary points, an area 341 with the two points as opposite apexes is selected.

Further, a “Confirm” button 342 is displayed in the lower portion of the area selection screen 340, and by pushing this button, a command is given to apply the template to the selected area 341.

FIG. 4 illustrates a concept of creating and applying a template.

400 illustrates a game space. Nine facilities are arranged within the game space 400. Specifically, four facilities illustrated as “black circle”, three facilities illustrated as “black triangle”, and two facilities illustrated as “black square” are arranged therein.

Assume that a template has been created for an area 401 within the game space 400. 410 illustrates the created template. The template 410 defines that facilities illustrated as “black circle” of a type illustrated as “white circle” are arranged at (1,1) and (1,2), facilities illustrated as “black triangle” of a type illustrated as “white triangle” are arranged at (1,3), (2,1) and (2,2), and a facility illustrated as “black square” of a type illustrated as “white square” is arranged at (2,3).

420 illustrates another game space. Six facilities are arranged within the game space 420. Specifically, two facilities illustrated as “black circle”, three facilities illustrated as “black triangle”, and one facility illustrated as “black square” are arranged therein.

Assume that the template 410 has been applied to an area 421 within the game space 420. The number of types of facilities and the number of facilities in each type arranged within the game space 420 are equal to the number of types of facilities and the number of facilities in each type, respectively, positions of the facilities being defined by the template 410. Thus, all facilities arranged within the game space 420 are moved to positions of facilities as defined by the template 410. Actually, facilities 422 to 425 arranged outside of the area 421 are moved to positions of these facilities within the area 421. 420′ illustrates the game space 420 after the facilities 422 to 425 have been moved.

430 illustrates yet another game space. Nine facilities are arranged within the game space 430. Specifically, three facilities illustrated as “black circle”, five facilities illustrated as “black triangle”, and one facility illustrated as “black square” are arranged therein.

Assume that the template 410 has been applied to an area 431 within the game space 430. The number of types of facilities and the number of facilities in each type arranged within the game space 430 is equal to or larger than the number of types of facilities and the number of facilities in each type, respectively, positions of the facilities being defined by the template 410. Thus, of the facilities arranged within the game space 420, those facilities with the smallest moving distance (e.g., Manhattan distance) to positions of facilities defined by the template 410, are moved to the positions of facilities. Actually, facilities 432 to 435 arranged outside of the area 431 are moved to positions of these facilities within the area 431. 430′ illustrates the game space 430 after the facilities 432 to 435 have been moved.

The facilities to be moved are not limited to those with the smallest moving distance. The player may also designate facilities which are to be moved, or an area containing facilities which are to be moved. Further, the player may also in advance designate facilities which are not to be moved, or an area containing facilities which are not to be moved.

440 illustrates still another game space. Four facilities are arranged within the game space 440. Specifically, one facility illustrated as “black circle”, two facilities illustrated as “black triangle”, and one facility illustrated as “black square” are arranged therein.

Assume that the template 410 has been applied to an area 441 within the game space 440. The number of types of facilities and the number of facilities in each type arranged within the game space 440 is equal to or smaller than the number of types of facilities and the number of facilities in each type, respectively, positions of the facilities being defined by the template 410. Thus, all facilities arranged within the game space 440 are moved to positions of facilities defined by the template 410, to which the moving distance is the smallest. Actually, facilities 442 and 443 arranged outside the area 441 are moved to positions of these facilities within the area 441. 440′ illustrates the game space 440 after the facilities 442 and 443 have been moved.

In the game space 440′, positions on which no facilities are arranged among the positions of facilities defined by the template 410, are illustrated in a condition where the facility type is discernible (e.g., “white circle” 444 and “white triangle” 445).

Further, when no facility has been arranged, it is also possible to present the player with facilities of the same type or with facilities of a similar type as proposals.

Moreover, it is also possible for the player to purchase facilities for positions where no facility has been arranged, or to acquire the facilities, for example, by trading with a different player in a multi-player environment as described below. Moreover, when the player has not arranged a facility defined by a template within the game space but has stored the facility in storage, the player may arrange this facility based on the template, or conversely, the player may store a facility that is not defined by the template, in the storage. Although in the above description, a player creates templates himself/herself, templates may also be distributed from a service-side server 3, or may be acquired from other players. In such cases, a player may not possess a facility defined by a template in some cases. However, whether the player possesses a facility defined by a template may be judged on a portable device 2 side or on a server 3 side, and a screen for purchasing the facility which has been judged not to be in the player's possession may be displayed on the portable device 2, so that the player is automatically guided to a purchase screen.

Further, templates may also be automatically created based on an operation by the player. For example, the server 3 may automatically create templates based on facilities the player possesses, facilities selected by the player, an area and/or an objective of a template. The objective of a template is, for instance, to realize a city that offers strong protection against soldiers with bows and arrows, to realize a city that work effectively for protection against attacks by giants, to strengthen the protection against air attacks, etc. In doing so, it becomes easy for the player to create templates consistent with objectives.

In order to achieve the above-described functions, the device processing unit 25 includes a game progression unit 251, a template creation unit 252, and a template application unit 253. All of these units are functional modules implemented by a program executed on a processor provided in the device processing unit 25. Alternatively, these units may also be provided as firmware on the portable device 2.

In the following, processing by the game progression unit 251 will be described.

The game progression unit 251 controls the start and progression of the game, and appropriately gives commands to execute processing to the template creation unit 252, template application unit 253, etc.

Specifically, when a command to start the game is given by the player via the operation unit 23, the game progression unit 251 displays the game progression screen 300.

In other words, the game progression unit 251 refers to the facility table stored in the device storage unit 22, and extracts a type ID and a position of each facility. Further, the game progression unit 251 refers to the facility-type table stored in the device storage unit 22 by using the extracted type IDs as key, and extracts file names of image data for corresponding types. Further, the game progression unit 251 obtains image data corresponding to the extracted file names, from the device storage unit 22. Then, the game progression unit 251 configures a game progression screen 300 that displays images arising from the obtained image data according to the extracted positions, and that simultaneously displays buttons for receiving commands such as template creation, template application, etc., in a predetermined layout; and outputs the game progression screen 300 to the display unit 24.

When a command to create a template is given by the player via the operation unit 23, the game progression unit 251 gives a command to execute processing to the template creation unit 252.

When a command to apply a template is given by the player via the operation unit 23, the game progression unit 251 gives a command to execute processing to the template application unit 253.

When a command to execute different processing is given by the player via the operation unit 23, the game progression unit 251 executes the different processing.

In the following, processing by the template creation unit 252 will be described.

The template creation unit 252 creates templates, stores the templates in the device storage unit 22, and registers the created templates on the server 3.

Specifically, the template creation unit 252 displays the area selection screen 310.

When an area has been selected and a command to create a template is given by the player via the operation unit 23, the template creation unit 252 creates a template.

In other words, the template creation unit 252 refers to the facility table stored in the device storage unit 22 by using the coordinates of the selected area as key, and extracts a type ID and a position within the game space of each facility arranged within the selected area. The template creation unit 252 further converts the extracted positions within the game space to positions within the template. Moreover, the template creation unit 252 creates thumbnail image data for the selected area, and stores the data in the device storage unit 22. The template creation unit 252 then stores the file name of the stored thumbnail image data, the extracted type ID and position within the template of each facility, etc., in the template table stored in the device storage unit 22 under a newly assigned template ID.

Further, the template creation unit 252 registers the created template on the server 3.

In other words, the template creation unit 252 sends a template registration request via the device communication unit 21 to the server 3 by using the player ID, the assigned template ID, the created thumbnail image data, and the extracted type ID and position within the template of each facility, as parameters.

Then, the template creation unit 252 terminates the processing.

In the following, processing by the template application unit 253 will be described.

The template application unit 253 obtains a template from the device storage unit 22 or the server 3, and applies the obtained template.

Specifically, the template application unit 253 displays the template selection screen 320.

In other words, the template application unit 253 refers to the template table stored in the device storage unit 22, and extracts an ID and a file name of thumbnail image data of each template. Further, the template application unit 253 obtains thumbnail image data corresponding to the extracted file name, from the device storage unit 22.

When necessary, the template application unit 253 sends a request for providing a template list via the device communication unit 21 to the server 3 by using the player ID as a parameter. Further, the template application unit 253 receives an ID and thumbnail image data of each template from the server 3 via the device communication unit 21.

Then, the template application unit 253 configures the template selection screen 320 that displays thumbnail images arising from the obtained thumbnail image data, buttons for receiving commands such as template selection, etc., in a predetermined layout; and outputs the template selection screen 320 to the display unit 24.

When a template is selected by the player via the operation unit 23, the template application unit 253 displays the template display screen 330.

In other words, when the selected template is a template provided by the server 3, the template application unit 253 sends a request for providing the template via the device communication unit 21 to the server 3 by using the ID of the selected template as a parameter. Further, the template application unit 253 receives thumbnail image data of a corresponding template and the type ID and position of each facility from the server 3 via the device communication unit 21. The template application unit 253 then stores the received thumbnail image data in the device storage unit 22. Further, the template application unit 253 stores the ID of the selected template, the file name of the stored thumbnail image data, the received type ID and position of each facility, etc., in the template table stored in the device storage unit 22.

The template application unit 253 refers to the template table stored in the device storage unit 22 by using the ID of the selected template as key, and extracts a type ID of each facility in the corresponding template. The template application unit 253 counts the number of extracted types of facilities. Further, the template application unit 253 refers to the facility-type table stored in the device storage unit 22 by using the extracted type IDs as key, and extracts corresponding names of the types. Moreover, the template application unit 253 creates a preview image for when the selected template is applied to a predetermined area within the game space. Then, the template application unit 253 configures the template display screen 330 that displays the extracted names and the number of facilities, the created preview image, buttons for receiving commands such as template confirmation, etc., in a predetermined layout; and outputs the template display screen 330 to the display unit 24.

In the following, a process of applying a template will be described.

When a template is confirmed by the player via the operation unit 23, the template application unit 253 displays the area selection screen 340.

When an area has been selected and a command to apply a template has been given by the player via the operation unit 23, the template application unit 253 applies the template.

In other words, the template application unit 253 refers to the facility table stored in the device storage unit 22, and extracts an ID, a type ID and a position within the game space of each facility. The template application unit 253 counts the number of extracted types of facilities and the number of facilities in each type. The template application unit 253 further refers to the template table stored in the device storage unit 22 by using the ID of the selected template as key, and extracts a type ID and a position within the template of each facility in the corresponding template. The template application unit 253 counts the number of extracted types of facilities and the number of facilities in each type. Moreover, the template application unit 253 converts the extracted positions within the template to positions within the game space based on coordinates of the selected area. For each type of facility, the template application unit 253 compares the number of facilities of this type within the game space and the number of facilities of this type within the template.

When the former and the latter are equal, the template application unit 253 moves the facilities of this type within the game space to the positions of the facilities of this type within the template. In other words, the template application unit 253 refers to the facility table stored in the device storage unit 22 by using the IDs of the facilities of each type within the game space as key, and stores the positions of the facilities of this type within the template as positions of the corresponding facilities within the game space.

On the other hand, when the former is larger than the latter, the template application unit 253 moves the facilities of this type within the game space for which the moving distance to the positions of the facilities of this type within the template is the smallest, to the positions of these facilities. In other words, for each position of a facility of a type within the template, the template application unit 253 specifies a facility of this type within the game space for which the moving distance to the position is the smallest. The template application unit 253 then refers to the facility table stored in the device storage unit 22 by using the ID of the specified facility as key, and stores the position of the specified facility as position of the corresponding facility within the game space.

On the other hand, when the former is smaller than the latter, the template application unit 253 moves the facilities of a type within the game space to positions of the facilities of this type within the template to which the moving distance is the smallest. In other words, for each facility of a type within the game space, the template application unit 253 specifies a position of a facility of this type within the template to which the moving distance is the smallest. The template application unit 253 then refers to the facility table stored in the device storage unit 22 by using the ID of the facility as key, and stores the specified position as position of the corresponding facility within the game space.

Other than facilities for which the moving distance is the smallest, the player may also designate facilities which are to be moved, or an area containing facilities which are to be moved. Further, the player may also in advance designate facilities which are not to be moved, or an area containing facilities which are not to be moved.

Then, the template application unit 253 terminates the processing.

FIG. 5A illustrates one possible schematic configuration of the server 3.

In response to requests from the portable device 2, the server 3 registers and provides templates. In order to achieve such functions, the server 3 is provided with a server communication unit 31, a server storage unit 32, and a server processing unit 33.

The server communication unit 31 includes a communication interface circuit for connecting the server 3 to the Internet 7, and communicates with the Internet 7. The server communication unit 31 supplies the data received from the portable device 2 or the like to the server processing unit 33. The server communication unit 31 sends the data supplied from the server processing unit 33 to the portable device 2 or the like.

The server storage unit 32 includes at least one of a magnetic tape device, a magnetic disk device and an optical disk device, for example. The server storage unit 32 stores an operating system program, a driver program, an application program, data, etc., used for processing in the server processing unit 33. The server storage unit 32 stores, for example, a game control program, etc., for registering and providing templates, as the application program. The server storage unit 32 stores a player table (FIG. 5B) for managing players, a template table (FIG. 5C) for managing templates, and image data, video data, etc., relating to the players, templates, etc., as the data. Further, the server storage unit 32 may store temporary data relating to certain processing.

FIG. 5B depicts a player table. In the player table, a player ID, a name, a file name of image data, an ID of a created template, etc., are recorded for each player.

FIG. 5C depicts a template table. Similarly to FIG. 2D, in the template table, for each template, a template ID, a file name of thumbnail image data, a type ID and a position within the template of each facility, etc., are recorded.

The server processing unit 33 includes one or more processors and their peripheral circuits. The server processing unit 33 is, for example, a CPU, and integrally controls an overall operation of the server 3. The server processing unit 33 controls an operation of the server communication unit 31 or the like so that various types of processing of the server 3 are executed in an appropriate order in accordance with the programs stored in the server storage unit 32. The server processing unit 33 executes processing based on the programs stored in the server storage unit 32 (the operating system program, the driver program, the application program, etc.). The server processing unit 33 can execute the multiple programs (the application program, etc.) in parallel.

The server processing unit 33 includes a server control unit 331, a template registration unit 332, and a template provision unit 333. Each of the units is a functional module implemented by a program to be executed by the processor included in the server processing unit 33. Alternatively, each of the units may be provided as a firmware on the server 3.

In the following, processing by the server control unit 331 will be described.

The server control unit 331 controls the performance of the server and appropriately gives commands to execute processing to the template registration unit 332, template provision unit 333, etc.

Specifically, when a template registration request is received from the portable device 2 via the server communication unit 31, the server control unit 331 gives the template registration unit 332 a command to execute processing, by using the received template registration request as a parameter.

When a request for providing a template list or a template provision request is received from the portable device 2 via the server communication unit 31, the server control unit 331 gives the template provision unit 333 a command to execute processing, by using the received request for providing a template list or the like as a parameter.

When a different request is received from the portable device 2 via the server communication unit 31, the server control unit 331 executes different processing corresponding to the request.

In the following, processing by the template registration unit 332 will be described.

The template registration unit 332 stores templates in the server storage unit 32.

In other words, the template registration unit 332 interprets the received template registration request, and specifies the ID of the player, the ID of the template, thumbnail image data, as well as the type ID and position of each facility. Then, the template registration unit 332 stores the specified thumbnail image data in the server storage unit 32. The template registration unit 332 further refers to the player table stored in the server storage unit 32 by using the specified player ID as key, and stores the specified template ID as an ID of a template created by the corresponding player. Moreover, the template registration unit 332 stores the specified template ID, the file name of the stored thumbnail image data, the type ID and position of each specified facility, etc., in the template table stored in the server storage unit 32.

Then, the template registration unit 332 terminates the processing.

In the following, processing by the template provision unit 333 will be described.

The template provision unit 333 obtains a template list or a template from the server storage unit 32, and sends the obtained template list or the like to the portable device 2.

Specifically, when a request for providing a template list has been received, the template provision unit 333 obtains a template list from the server storage unit 32.

In other words, the template provision unit 333 interprets the received request for providing a template list, and specifies the ID of the player. The template provision unit 333 then refers to the player table stored in the server storage unit 32 by using the specified player ID as key, and extracts an ID of a template created by a player different from the corresponding player. Further, the template provision unit 333 refers to the template table stored in the server storage unit 32 by using the extracted template ID as key, and extracts a file name of thumbnail image data for the corresponding template. Moreover, the template provision unit 333 obtains the thumbnail image data corresponding to the extracted file name, from the server storage unit 32.

On the other hand, when a template provision request is received, the template provision unit 333 obtains a template from the server storage unit 32.

In other words, the template provision unit 333 interprets the received template provision request, and specifies the ID of the template. Then, the template provision unit 333 refers to the template table stored in the server storage unit 32 by using the specified template ID as key, and extracts a file name of thumbnail image data for the corresponding template, as well as the type ID and position of each facility. Further, the template provision unit 333 obtains thumbnail image data corresponding to the extracted file name, from the server storage unit 32.

The template provision unit 333 sends the obtained template list or the like to the portable device 2.

In other words, the template provision unit 333 sends the extracted ID of each template and the thumbnail image data, or the thumbnail image data of the template as well as the type ID and position of each facility that are obtained or the like, to the portable device 2 via the server communication unit 31.

Then, the template provision unit 333 terminates the processing.

FIGS. 6A to 6C illustrate examples of the operational flow of the portable device 2.

The below-described operational flow is executed, based on a program that is stored in advance in the device storage unit 22, mostly by the device processing unit 25 by working together with each component of the portable device 2.

FIG. 6A illustrates an example of the operational flow of the game progression unit 251.

The player gives the device processing unit 25 a command to start a game via the operation unit 23. The device processing unit 25 starts processing based on the game program. In other words, the game progression unit 251 implemented by the game program displays the game progression screen 300 (Step S100).

When a command to create a template is given by the player via the operation unit 23 (Step S102—Yes), the game progression unit 251 gives the template creation unit 252 a command to execute processing (Step S104).

FIG. 6B illustrates an example of the operational flow of the template creation unit 252.

The template creation unit 252 displays the area selection screen 310 (Step S120).

When an area is selected by the player via the operation unit 23 (Step S122) and a command to create a template is given, the template creation unit 252 creates a template (Step S124).

The template creation unit 252 registers the created template on the server 3 (Step S126). Then, the template creation unit 252 terminates processing.

On the other hand, when a command to apply a template is given by the player via the operation unit 23 (Step S106—Yes), the game progression unit 251 gives the template application unit 253 a command to execute processing (Step S108).

FIG. 6C illustrates an example of the operational flow of the template application unit 253.

The template application unit 253 displays the template selection screen 320 (Step S130).

When a template is selected by the player via the operation unit 23 (Step S132), the template application unit 253 displays the template display screen 330.

When the template is confirmed by the player via the operation unit 23 (Step S134), the template application unit 253 displays the area selection screen 340.

When an area is selected by the player via the operation unit 23 (Step S136) and a command to apply a template is given, the template application unit 253 applies the template (Step S138). Then, the template application unit 253 terminates processing.

On the other hand, when a command for different processing is given by the player via the operation unit 23 (Step S106—No), the game progression unit 251 executes the different processing (Step S110).

FIGS. 7A to 7C illustrate examples of the operational flow of the server 3.

The below-described operational flow is executed, based on a program that is stored in advance in the server storage unit 32, mostly by the server processing unit 33 by working together with each component of the server 3.

FIG. 7A illustrates an example of the operational flow of the server control unit 331.

When a template registration request is received from the portable device 2 via the server communication unit 31 (Step S200—Yes), the server control unit 331 gives the template registration unit 332 a command to execute processing (Step S202), by using the received template registration request as a parameter.

FIG. 7B illustrates an example of the operational flow of the template registration unit 332.

The template registration unit 332 stores the template included in the received template registration request in the server storage unit 32 (Step S220). Then, the template registration unit 332 terminates processing.

On the other hand, when a request for providing a template list or a template provision request is received from the portable device 2 via the server communication unit 31 (Step S204—Yes), the server control unit 331 gives the template provision unit 333 a command to execute processing (Step S206), by using the received request for providing a template list or the like as a parameter.

FIG. 7C illustrates an example of the operational flow of the template provision unit 333.

When the request for providing a template list is received (Step S230—Yes), the template provision unit 333 obtains a list of templates of players other than the player corresponding to the player ID included in the received request for providing a template list, from the server storage unit 32 (Step S232).

On the other hand, when the template provision request is received (Step S230—No), the template provision unit 333 obtains a template corresponding to the template ID included in the received template provision request, from the server storage unit 32 (Step S234).

The template provision unit 333 sends the obtained template list or the like to the portable device 2 (Step S236). Then, the template provision unit 333 terminates processing.

On the other hand, when a different request is received from the portable device 2 via the server communication unit 31 (Step S204—No), the server control unit 331 executes different processing corresponding to the request (Step S208).

As have been described above, by making the arrangement of facilities changeable by using templates, the usability of city building games is improved, and it becomes possible to continuously attract players to the game.

In the above-described embodiment, the case is described where upon application of a template, facilities are automatically arranged within the game space based on definition in the template. However, it is also possible that when a template is being applied, a mark is displayed on the game space, so that the player can use this mark as approximation and change the types and positions of facilities himself/herself.

Further, besides buildings, walls, fences and so forth, facilities may also include information on types and quantities of soldiers and weapons to fight back against an attack by a different player.

Further, multiple templates may be prepared corresponding to objectives, and the player may be able to select a template depending on the objective. To give specific examples; there are multiple types of soldiers with which a different player attacks, and there may be a template realizing a city that offers strong protection against soldiers with bows and arrows, a template realizing a city that work effectively for protection against attacks by giants, a template that strengthens the protection against air attacks, etc.

Moreover, a characteristic value of each template may be calculated based on the facilities included in the template and the records of battles fought using the template in the game. Further, the characteristic value of the template and characteristics of the template based on the characteristic value may be displayed and presented to the player. Specifically, a defense power may be displayed based on parameters of protective facilities and the number of the protective facilities included in the template; a winning percentage when using the template may be displayed; and characteristic that the template has good defense power and a good winning percentage is displayed based on the defense power and winning percentage included in the templates. Thus, the player can easily understand the characteristics of respective templates and compare the characteristics.

Second Embodiment

In the first embodiment, a single player environment is assumed, wherein a player progresses the game by himself/herself. However, the present invention can also be applied to a multi-player environment wherein multiple players progress the game together. In the present embodiment, multiple players build a city within a single game space, and each player applies templates to a predetermined area within the game space. When a template is applied by a player, the facilities that belong to the player among the facilities arranged within the game space are moved to positions of these facilities defined by the template.

Since the schematic configuration of the game system 1 is the same as illustrated in FIG. 1, a description thereof is omitted.

FIG. 8A illustrates an example of a schematic configuration of the portable device 2.

The portable device 2 progresses the game in response to an operation of an operation unit 23 by a player or a command from a different portable device 2. When necessary, the portable device 2 is connected to the server 3 via the base station 4, the mobile communication network 5, the gateway 6, and the Internet 7, to communicate with the server 3. In order to implement the foregoing functions, the portable device 2 includes a device communication unit 21, a device storage unit 22′, the operation unit 23, a display unit 24, and a device processing unit 25.

Since the device communication unit 21, the operation unit 23, and the display unit 24 are the same as illustrated in FIG. 2A, a description thereof is omitted.

The device storage unit 22′ includes a semiconductor memory, for example. The device storage unit 22′ stores an operating system program, a driver program, an application program, data, etc., used for processing in the device processing unit 25. For example, the device storage unit 22′ stores an input device driver program for controlling the operation unit 23 and an output device driver program for controlling the display unit 24, as the driver program. The device storage unit 22′ stores a game program, etc., for progressing the game and displaying the result thereof, as the application program. The device storage unit 22′ stores player IDs, a facility table (FIG. 8B) for managing facilities arranged within the game space, a facility-type table (FIG. 2C) for managing types of the facilities, a template table (FIG. 2D) for managing templates, and image data, video data, etc., relating to the facilities, templates, etc., as the data. Further, the device storage unit 22′ may store temporary data relating to predetermined processing.

FIG. 8B depicts a facility table. In the facility table, for each player, an ID of each facility arranged within the game space by the player, a type ID, a position within the game space, etc., are recorded.

The device processing unit 25 includes one or more processors and their peripheral circuits. The device processing unit 25 is, for example, a CPU, and integrally controls an overall operation of the portable device 2. The device processing unit 25 controls operations of the device communication unit 21, the display unit 24, etc., so that various types of processing of the portable device 2 are executed in an appropriate order in accordance with the programs stored in the device storage unit 22′, the operation of the operation unit 23, etc. The device processing unit 25 executes processing based on the programs (the operating system program, the driver program, the application program, etc.) stored in the device storage unit 22′. The device processing unit 25 can execute multiple programs (application programs, etc.) in parallel.

FIG. 9 illustrates a concept of applying a template in a multi-player environment.

900 illustrates a game space. Twelve facilities are arranged within the game space 900. Specifically, four facilities illustrated as “black circle”, four facilities illustrated as “black triangle”, and four facilities illustrated as “black square” are arranged therein. Among these facilities, assume that the one facility illustrated as “black circle” and the two facilities illustrated as “black triangle” arranged in the upper-right three by three squares are those of a player′. Further, assume that the three facilities illustrated as “black square” arranged in the lower-right three by three squares are those of a player₂, the two facilities illustrated as “black triangle” and the one facility illustrated as “black square” arranged in the lower-left three by three squares are those of a player₃, and the three facilities illustrated as “black circle” arranged in the upper-left three by three squares are those of a player₄.

Assume that a template 910 has been applied to an area 901 within the game space 900 by the player₁. Similarly, assume that templates 920 to 940 have been applied to areas 902 to 904 by the player₂ to player₄, respectively. In relation to the player₁, the number of types of facilities and the number of facilities in each type arranged within the game space 900 are equal to the number of types of facilities and the number of facilities in each type, respectively, positions of the facilities being defined by the template 910. Thus, all facilities of the player₁ are moved to positions of facilities as defined by the template 910. Similarly, all facilities of the player₂ to player₄ are moved to positions of facilities as defined by the templates 920 to 940, respectively. 900′ illustrates the game space 900 after all the facilities have been moved.

In order to achieve the above-described functions, the device processing unit 25 includes a game progression unit 251′, a template creation unit 252, a template application unit 253, and a second template application unit 254. All of these units are functional modules implemented by a program executed on a processor provided in the device processing unit 25. Alternatively, these units may also be provided as firmware on the portable device 2.

Since the template creation unit 252 and the template application unit 253 are the same as illustrated in FIG. 2A, a description thereof is omitted.

In the following, processing by the game progression unit 251′ will be described.

The game progression unit 251′ controls the start and progression of the game, and appropriately gives commands to execute processing to the template creation unit 252, template application unit 253, second template application unit 254, etc.

Specifically, when a command to start the game is given by the player via the operation unit 23, the game progression unit 251′ displays the game progression screen 300.

When a command to create a template is given by the player via the operation unit 23, the game progression unit 251′ gives a command to execute processing to the template creation unit 252.

When a command to apply a template is given by the player via the operation unit 23, the game progression unit 251′ gives a command to execute processing to the template application unit 253.

When a template application command is received from a different portable device 2 via the device communication unit 21, the game progression unit 251′ gives the second template application unit 254 a command to execute processing, by using the received template application command as a parameter.

When a command to execute different processing is given by the player via the operation unit 23, the game progression unit 251′ executes the different processing.

In the following, processing by the second template application unit 254 will be described.

The second template application unit 254 obtains a template from the server 3, and applies the obtained template.

Specifically, the second template application unit 254 obtains a template from the server 3.

In other words, the second template application unit 254 interprets the received template application command, and specifies the ID of the player, the ID of the template, and the coordinates of the area to which the template is to be applied. Further, the second template application unit 254 sends a template provision request via the device communication unit 21 to the server 3 by using the specified template ID as a parameter. Further, the second template application unit 254 receives thumbnail image data of a corresponding template, as well as the type ID and position of each facility from the server 3 via the device communication unit 21. The second template application unit 254 then stores the received thumbnail image data in the device storage unit 22′. Further, the second template application unit 254 stores the ID of the specified template, the file name of the stored thumbnail image data, the received type ID and position of each facility, etc., in the template table stored in the device storage unit 22′.

The second template application unit 254 applies the obtained template.

In other words, the second template application unit 254 refers to the facility table stored in the device storage unit 22′ by using the ID of the specified player as key, and extracts an ID, a type ID and a position within the game space of each facility of the corresponding player. The second template application unit 254 counts the number of extracted types of facilities and the number of facilities in each type. The second template application unit 254 further refers to the template table stored in the device storage unit 22′ by using the ID of the specified template as key, and extracts a type ID and a position within the template of each facility in the corresponding template. The second template application unit 254 counts the number of extracted types of facilities and the number of facilities in each type. Moreover, the second template application unit 254 converts the extracted positions within the template to positions within the game space based on coordinates of the specified area. For each type of facility, the second template application unit 254 compares the number of facilities of this type within the game space and the number of facilities of this type within the template, and, according to the result, moves the facilities of this type within the game space to the positions of the facilities of this type within the template.

Then, the second template application unit 254 terminates the processing.

Since the schematic configuration of the server 3 is the same as illustrated in FIG. 5A, a description thereof is omitted.

FIGS. 10A and 10B illustrate examples of the operational flow of the portable device 2.

The below-described operational flow is executed, based on a program that is stored in advance in the device storage unit 22′, mostly by the device processing unit 25 by working together with each component of the portable device 2.

FIG. 10A illustrates an example of the operational flow of the game progression unit 251′.

Since Steps S100 to S108 are the same as illustrated in FIG. 6A, a description thereof is omitted.

When a template application command is received from a different portable device 2 via the device communication unit 21 (Step S300—Yes), the game progression unit 251′ gives the second template application unit 254 a command to execute processing, by using the received template application command as a parameter (Step S302).

FIG. 10B illustrates an example of the operational flow of the second template application unit 254.

The second template application unit 254 obtains a template corresponding to the template ID included in the received template application command, from the server 3 (Step S310).

The second template application unit 254 applies the obtained template (Step S312). Then, the second template application unit 254 terminates the processing.

On the other hand, when a command for different processing is given by the player via the operation unit 23 (Step S300—No), the game progression unit 251′ executes the different processing (Step S110).

As have been described above, by allowing each player to change the arrangement of facilities by using templates in a multi-player environment, the usability of city building games is improved, and it becomes possible to continuously attract players to the game.

It should be noted that the present invention is not limited to the above-described embodiment. For example, in the above-described embodiment, in order to combine multiple templates to create a single template, it is assumed that a player applies multiple templates to predetermined areas within the game space, or multiple players apply a template each to predetermined areas within the game space, and then a template for a predetermined area that encompasses all these areas is created. However, a player may designate multiple templates or multiple players may designate a template each, and then a template may be created by directly joining these templates.

FIG. 11 illustrates a concept of combining templates in a multi-player environment.

Assume that the player₁ has specified a template 1110 for an area 1100. Further, assume that the player₂ to player₄ have specified templates 1120 to 1140 for areas 1101 to 1103, respectively. 1150 illustrates a template obtained by combining the templates 1110 to 1140.

In order to achieve the above-described functions, the portable device 2 may perform processing as described below.

When a command to create a template is given by the player via the operation unit 23, the portable device 2 displays a predetermined screen and receives designations of template and area. In the same manner, the portable device 2 receives designations of template and area from a different portable device 2. Then, the portable device 2 obtains the designated templates from the device storage unit 22 or the server 3, and creates a new template by arranging the obtained templates on the designated areas.

In other words, the portable device 2 corrects the position of each facility defined by the obtained templates based on the coordinates specified by the designated areas. The portable device 2 then stores the type ID and corrected position, etc., of each facility defined by the obtained templates, in the template table stored in the device storage unit 22 under a newly assigned template ID.

Third Embodiment

In the above-described embodiment, it is assumed that templates are created by the player. However, preexisting templates may also be distributed by a server or the like. In the present embodiment, a preexisting template is distributed by a server depending on an event (e.g., protecting the city from an enemy character) happening in the city building game. The player applies the template distributed by the server, to a predetermined area within his/her own game space, moves and adds facilities as necessary, and thus prepares for the event. After a certain time has passed, the event happens, and the player is given various rewards (e.g., templates, facilities, etc.) depending on the outcome. Such a template can also be understood as a task given to the player in an event.

Since the schematic configuration of the game system 1 is the same as illustrated in FIG. 1, a description thereof is omitted.

FIG. 12 illustrates an example of a schematic configuration of the portable device 2.

The portable device 2 progresses the game in response to an operation of an operation unit 23 by a player. When necessary, the portable device 2 is connected to the server 3 via the base station 4, the mobile communication network 5, the gateway 6, and the Internet 7, to communicate with the server 3. In order to implement the foregoing functions, the portable device 2 includes a device communication unit 21, a device storage unit 22, the operation unit 23, a display unit 24, and a device processing unit 25.

Since the device communication unit 21, the device storage unit 22, the operation unit 23, and the display unit 24 are the same as illustrated in FIG. 2A, a description thereof is omitted.

The device processing unit 25 includes one or more processors and their peripheral circuits. The device processing unit 25 is, for example, a CPU, and integrally controls an overall operation of the portable device 2. The device processing unit 25 controls operations of the device communication unit 21, the display unit 24, etc., so that various types of processing of the portable device 2 are executed in an appropriate order in accordance with the programs stored in the device storage unit 22, the operation of the operation unit 23, etc. The device processing unit 25 executes processing based on the programs (the operating system program, the driver program, the application program, etc.) stored in the device storage unit 22. The device processing unit 25 can execute multiple programs (application programs, etc.) in parallel.

The device processing unit 25 includes a game progression unit 251″, a template creation unit 252, a template application unit 253, and a third template application unit 255. All of these units are functional modules implemented by a program executed on a processor provided in the device processing unit 25. Alternatively, these units may also be provided as firmware on the portable device 2.

Since the template creation unit 252 and the template application unit 253 are the same as illustrated in FIG. 2A, a description thereof is omitted.

In the following, processing by the game progression unit 251″ will be described.

The game progression unit 251″ controls the start and progression of the game, and appropriately gives commands to execute processing to the template creation unit 252, template application unit 253, third template application unit 255, etc.

Specifically, when a command to start the game is given by the player via the operation unit 23, the game progression unit 251″ displays the game progression screen 300.

When a command to create a template is given by the player via the operation unit 23, the game progression unit 251″ gives a command to execute processing to the template creation unit 252.

When a command to apply a template is given by the player via the operation unit 23, the game progression unit 251″ gives a command to execute processing to the template application unit 253.

When an event start report is received from the server 3 via the device communication unit 21, the game progression unit 251″ gives the third template application unit 255 a command to execute processing, by using the received event start report as a parameter.

When a command to execute different processing is given by the player via the operation unit 23, the game progression unit 251″ executes the different processing.

In the following, processing by the third template application unit 255 will be described.

The third template application unit 255 obtains a template for an event from the server 3, and applies the obtained template.

Specifically, the third template application unit 255 obtains a template for an event from the server 3.

In other words, the third template application unit 255 interprets the received event start report, and specifies the ID of the event. Further, when a command to participate in an event is given by the player via the operation unit 23, the third template application unit 255 sends an event participation request via the device communication unit 21 to the server 3 by using the player ID and the specified event ID as parameters. Further, the third template application unit 255 receives an ID and thumbnail image data of a template for the corresponding event, as well as the type ID and position of each facility from the server 3 via the device communication unit 21. The third template application unit 255 then stores the received thumbnail image data in the device storage unit 22. Further, the third template application unit 255 stores the ID of the received template, the file name of the stored thumbnail image data, the received type ID and position of each facility, etc., in the template table stored in the device storage unit 22.

The third template application unit 255 applies the obtained template.

In other words, the third template application unit 255 refers to the facility table stored in the device storage unit 22, and extracts an ID, a type ID and a position within the game space of each facility. The third template application unit 255 counts the number of extracted types of facilities and the number of facilities in each type. The third template application unit 255 further refers to the template table stored in the device storage unit 22 by using the ID of the received template as key, and extracts a type ID and a position within the template of each facility in the corresponding template. The third template application unit 255 counts the number of extracted types of facilities and the number of facilities in each type. Moreover, the third template application unit 255 converts the extracted positions within the template to positions within the game space based on coordinates of the area selected by the player via the operation unit 23. For each type of facility, the third template application unit 255 compares the number of facilities of this type within the game space and the number of facilities of this type within the template, and, according to the result, moves the facilities of this type within the game space to the positions of the facilities of this type within the template.

Then, the third template application unit 255 terminates the processing.

FIG. 13A illustrates one possible schematic configuration of the server 3.

In response to requests from the portable device 2, the server 3 registers and provides templates. Further, the server 3 manages events and provides templates. In order to achieve such functions, the server 3 is provided with a server communication unit 31, a server storage unit 32′, and a server processing unit 33.

Since the server communication unit 31 is the same as illustrated in FIG. 5A, a description thereof is omitted.

The server storage unit 32′ includes at least one of a magnetic tape device, a magnetic disk device and an optical disk device, for example. The server storage unit 32′ stores an operating system program, a driver program, an application program, data, etc., used for processing in the server processing unit 33. The server storage unit 32′ stores, for example, a game control program, etc., for registering and providing templates and managing events, as the application program. The server storage unit 32′ stores a player table (FIG. 5B) for managing players, a template table (FIG. 5C) for managing templates, an event table for managing events (FIG. 13B), and image data, video data, etc., relating to the players, templates, etc., as the data. Further, the server storage unit 32′ may store temporary data relating to certain processing.

FIG. 13B depicts an event table. In the event table, an event ID, starting date and time, an ID of a template to be used, an ID of a participating player, etc., are recorded for each event.

The server processing unit 33 includes one or more processors and their peripheral circuits. The server processing unit 33 is, for example, a CPU, and integrally controls an overall operation of the server 3. The server processing unit 33 controls an operation of the server communication unit 31 or the like so that various types of processing of the server 3 are executed in an appropriate order in accordance with the programs stored in the server storage unit 32′. The server processing unit 33 executes processing based on the programs stored in the server storage unit 32′ (the operating system program, the driver program, the application program, etc.). The server processing unit 33 can execute the multiple programs (the application program, etc.) in parallel.

The server processing unit 33 includes a server control unit 331′, a template registration unit 332, a template provision unit 333, and an event management unit 334. Each of the units is a functional module implemented by a program to be executed by the processor included in the server processing unit 33. Alternatively, each of the units may be provided as a firmware on the server 3.

Since the template registration unit 332 and the template provision unit 333 are the same as illustrated in FIG. 5A, a description thereof is omitted.

In the following, processing by server control unit 331′ will be described.

The server control unit 331′ controls the performance of the server and appropriately gives commands to execute processing to the template registration unit 332, template provision unit 333, event management unit 334, etc.

Specifically, when a template registration request is received from the portable device 2 via the server communication unit 31, the server control unit 331′ gives the template registration unit 332 a command to execute processing, by using the received template registration request as a parameter.

When a request for providing a template list or a template provision request is received from the portable device 2 via the server communication unit 31, the server control unit 331′ gives the template provision unit 333 a command to execute processing, by using the received request for providing a template list or the like as a parameter.

When there is an event whose starting date and time has passed, the server control unit 331′ gives the event management unit 334 a command to execute processing, by using the event ID as a parameter.

In other words, the server control unit 331′ refers to the event table stored in the server storage unit 32′, and extracts an ID and starting date and time of each event. Further, the server control unit 331′ obtains the current date and time from a clock (not illustrated). When there is an event whose starting date and time is before the obtained current date and time, the server control unit 331′ gives the event management unit 334 a command to execute processing, by using the event ID as a parameter.

When an event participation request is received from the portable device 2 via the server communication unit 31, the server control unit 331′ gives the event management unit 334 a command to execute processing, by using the received event participation request as a parameter.

When a different request is received from the portable device 2 via the server communication unit 31, the server control unit 331′ executes different processing corresponding to the request.

In the following, processing by the event management unit 334 will be described.

The event management unit 334 sends an event start report to the portable device 2. Further, the event management unit 334 obtains a template for an event from the server storage unit 32′, and sends the obtained template to the portable device 2.

Specifically, when an event ID has been received, the event management unit 334 sends an event start report to the portable device 2.

In other words, the event management unit 334 refers to the player table stored in the server storage unit 32′, and specifies players. Then, the event management unit 334 sends an event start report via the server communication unit 31 to the portable device 2 of each of the specified players, by using the received event ID as a parameter.

Then, the event management unit 334 terminates the processing.

On the other hand, when an event participation request has been received, the event management unit 334 makes the player participate in the corresponding event.

Specifically, the event management unit 334 interprets the received event participation request, and specifies the ID of the event and the ID of the player. The event management unit 334 then refers to the event table stored in the server storage unit 32′ by using the specified event ID as key, and stores the specified player ID as an ID of a player participating in the corresponding event.

The event management unit 334 obtains a template for the corresponding event from the server storage unit 32′.

Specifically, the event management unit 334 refers to the event table stored in the server storage unit 32′ by using the specified event ID as key, and extracts an ID of a template for the corresponding event. Then, the event management unit 334 refers to the template table stored in the server storage unit 32′ by using the extracted template ID as key, and extracts a file name of thumbnail image data for the corresponding template, as well as the type ID and position of each facility. Further, the event management unit 334 obtains thumbnail image data corresponding to the extracted file name, from the server storage unit 32′.

The event management unit 334 sends the obtained template to the portable device 2.

In other words, the event management unit 334 sends the thumbnail image data of the template as well as the type ID and position of each facility that are obtained or the like, to the portable device 2 via the server communication unit 31.

Then, the event management unit 334 terminates the processing.

FIGS. 14A and 14B illustrate examples of the operational flow of the portable device 2.

The below-described operational flow is executed, based on a program that is stored in advance in the device storage unit 22, mostly by the device processing unit 25 by working together with each component of the portable device 2.

FIG. 14A illustrates an example of the operational flow of the game progression unit 251″.

Since Steps S100 to S108 are the same as illustrated in FIG. 6A, a description thereof is omitted.

When an event start report is received from the server 3 via the device communication unit 21 (Step S400—Yes), the game progression unit 251″ gives the third template application unit 255 a command to execute processing, by using the received event start report as a parameter (Step S402).

FIG. 14B illustrates an example of the operational flow of the third template application unit 255.

The third template application unit 255 obtains a template for an event from the server 3, and applies the obtained template (Step S410).

The third template application unit 255 applies the obtained template (Step S412). Then, the third template application unit 255 terminates the processing.

On the other hand, when a command for different processing is given by the player via the operation unit 23 (Step S400—No), the game progression unit 251″ executes the different processing (Step S110).

FIGS. 15A to 15C illustrate examples of the operational flow of the server 3.

The below-described operational flow is executed, based on a program that is stored in advance in the server storage unit 32′, mostly by the server processing unit 33 by working together with each component of the server 3.

FIG. 15A illustrates an example of the operational flow of the server control unit 331′.

Since Steps S200 to S206 are the same as illustrated in FIG. 7A, a description thereof is omitted.

When there is an event whose starting date and time has passed (Step S500—Yes), the server control unit 331′ gives the event management unit 334 a command to execute processing, by using the event ID as a parameter (Step S502).

FIG. 15B illustrates an example of the operational flow of the event management unit 334.

When an event ID has been received, the event management unit 334 sends an event start report to the portable device 2 (Step S510). Then, the event management unit 334 terminates the processing.

On the other hand, when an event participation request is received from the portable device 2 via the server communication unit 31 (Step S504—Yes), the server control unit 331′ gives the event management unit 334 a command to execute processing, by using the received event participation request as a parameter (Step S506).

FIG. 15C illustrates another example of the operational flow of the event management unit 334.

When an event participation request has been received, the event management unit 334 makes the player participate in the corresponding event. (Step S520).

The event management unit 334 obtains a template for the corresponding event from the server storage unit 32′ (Step S522).

The event management unit 334 sends the obtained template to the portable device 2 (Step S524). Then, the event management unit 334 terminates the processing.

On the other hand, when a different request is received from the portable device 2 via the server communication unit 31 (Step S504—No), the server control unit 331′ executes different processing corresponding to the request (Step S208).

As have been described above, by making preexisting templates distributable, it becomes possible to make an event happen in accordance with the arrangement of facilities, which increases the attractiveness of city building games, and makes it possible to continuously attract players to the game.

It should be noted that the present invention is not limited to the above-described embodiment. For example, in the above-described embodiment, it is assumed that a preexisting template is distributed depending on occurrence of an event. But templates may not only be used when an event is happening. During a so-called tutorial that is meant to teach players how to play by arranging various facilities, templates with arrangements for different intended uses, such as balance type, resource protecting type, and so forth may be provided.

Further, in the above-described embodiment, the creation and application of a template are performed by the portable device 2. However, the creation and application may also be performed by the server 3. In this case, the server 3 may store facilities arranged within the game space for each player, and in response to commands by the player, create and/or apply a template to a predetermined area within the game space of the player.

Further, while the above-described embodiment is described by an example wherein positions of facilities are changed based on definition in the template, the types of facilities may be changed.

Further, types are not limited to buildings, walls, fences and so forth, and any other game items such as soldiers and weapons to fight back against an attack by a different player may be applicable.

A computer program for causing a computer to execute the respective functions of the device processing unit 25 and the server processing unit 33 may be provided in a form recorded on a non-transitory computer-readable recording medium such as a semiconductor recording medium, a magnetic recording medium and an optical recording medium, and may be installed on the device storage unit 22 and the server storage unit 32 from the recording medium by using a known set-up program, etc.

The preceding description has been presented only to illustrate and describe exemplary embodiments of the present invention. It is not intended to be exhaustive or to limit the invention to any precise form disclosed. It will be understood by those skilled in the art that various changes may be made and equivalents may be substituted for elements thereof without departing from the scope of the invention. In addition, many modifications may be made to adapt a particular situation or material to the teachings of the invention without departing from the essential scope. Therefore, it is intended that the invention not be limited to the particular embodiment disclosed as the best mode contemplated for carrying out this invention, but that the invention will include all embodiments falling within the scope of the claims. The invention may be practiced otherwise than is specifically explained and illustrated without departing from its spirit or scope. 

What is claimed is:
 1. A method for controlling a computer that is provided with a storage unit configured to store game contents arranged within a game space, positions of the game contents, and a template defining positions of one or more of game contents, and that progresses a game by arranging the game contents within the game space based on a command by a player, the method comprising: when the template is applied to a predetermined area within the game space based on the command by the player, moving, by the computer, the game contents arranged within the game space to the positions of the game contents defined by the template.
 2. The method according to claim 1, wherein the storage unit further stores a template related to a different player, and when the template related to the different player is applied to a predetermined area within the game space based on the command by the player, the computer moves the game contents arranged within the game space to the positions of the game contents defined by the template related to the different player.
 3. The method according to claim 2, wherein the storage unit further stores game contents which are arranged within the game space and are related to the different player, and positions of the game contents, and when the template related to the different player is applied to a predetermined area within the game space based on a command by the different player, the computer moves, out of the game contents arranged within the game space, game contents related to the different player to the positions of the game contents defined by the template related to the different player.
 4. The method according to claim 1, wherein when a start of an event is reported by a different computer, the computer obtains a template for the event from the different computer and moves the game contents arranged within the game space to the positions of the game contents defined by the template obtained from the different computer.
 5. The method according to claim 1, wherein when the number of game contents arranged within the game space is smaller than the number of game contents for which positions are defined by the template, the computer moves the game contents arranged within the game space to the positions of the game contents defined by the template to which the moving distance is the smallest.
 6. The method according to claim 5, wherein out of the positions of the game contents defined by the template, the computer displays positions on which no game contents are arranged and the game contents, in a discernible condition.
 7. The method according to claim 1, wherein when the number of game contents arranged within the game space is larger than the number of game contents for which position are defined by the template, the computer moves the game contents arranged within the game space for which the moving distance to the positions of the game contents defined by the template is the smallest, to the positions.
 8. The method according to claim 1, wherein when a template is created for a predetermined area within the game space based on a command from the player, the computer stores positions of game contents arranged within the predetermined area, as the template, in the storage unit.
 9. The method according to claim 1, wherein when a template is created by combining a plurality of templates based on a command from the player or a different player, or commands from the player and the different player, the computer stores the positions of the game contents defined by the plurality of templates, as the template, in the storage unit.
 10. A non-transitory computer-readable recording medium having recorded thereon a program for a computer that is provided with a storage unit configured to store game contents arranged within a game space, positions of the game contents, and a template defining positions of one or more of game contents, and that progresses a game by arranging the game contents within the game space based on a command by a player, the program causing the computer to execute a process, the process comprising: when the template is applied to a predetermined area within the game space based on the command by the player, moving, by the computer, the game contents arranged within the game space to the positions of the game contents defined by the template.
 11. A computer that progresses a game by arranging game contents within a game space based on a command by a player, the computer comprising: a storage unit configured to store game contents arranged within the game space, positions of the game contents, and a template defining positions of one or more of game contents; and a processing unit configured to apply the template to a predetermined area within the game space based on the command by the player, wherein when the template is applied, the processing unit moves the game contents arranged within the game space to the positions of the game contents defined by the template. 